package runtimeconstant;

/**
 * @author ZhengDp
 * @Date 2023/5/12 16:47
 */
public class StringTable_Demo1 {
    public static void main(String[] args) {
       String s = new String("a") + new String("b");
       // StringTable : ["a","b"] ==> "a" 和 "b" 是常量，被使用到了，所以会加入到 串池中
        // 但是 new String("a") 并不会等于串池中的"a" ==> 也就是说，堆创建一个，串池这边也创建一个
        // s 是动态拼接的，所以不会加入到串池 ==> 只有堆中有 "ab"
        String s3 = "ab";
        System.out.println(s3 == s);
        s.intern(); // 将字符串对象尝试放入串池，返回串池中的对象
        String s2 = "ab";
        System.out.println(s2 == s);
    }
}
